Electronic devices such as mobile phones and personal digital assistants (PDAs) often contain firmware and/or application software that are either provided by the manufacturers of the electronic devices, by telecommunication carriers, or by third parties. These firmware and application software often contain bugs. New versions of firmware and software are periodically released to fix the bugs and/or to introduce new features.
Electronic devices such as high-end mobile phones, for example, often contain a flash memory card, some times called a multimedia card or MMC card. The electronic devices contain a flash memory card reader that is employed to read and/or write information on the flash memory cards that are inserted by end users. Quite often, flash memory cards are used to store content such as digital photographs or audio files by the end user.
If firmware or firmware components of the electronic device are to be changed, it is often very tricky to update the firmware components in an electronic device. If an update agent is not present in the device, the device firmware/software cannot be updated. The electronic device must have sufficient memory available to download an update package and to execute an update process. Often, electronic devices do not have sufficient memory for such downloading of entire new applications. If power is lost while changes to firmware or firmware components of the electronic device are being performed, the device is likely to malfunction, unless fault tolerant update mechanisms are implemented. Such update mechanisms may make the updating firmware more complicated. There are few efficient fault tolerant mechanisms that can be applied to constrained devices, and often it is not clear if these mechanism are compatible with the architecture of the device.
Attempts to upgrade firmware and/or software in electronic devices such as GSM phones, for example, are often hampered by the limited user interaction capabilities of the device, and the slow communication speeds available. End-user interactions cannot be relied upon, as they can be erroneous. In addition, some electronic devices may not have sufficient memory to store an update package as well as to install it in the non-volatile (NV) memory of the devices, such as in the flash memory.
Some mobile devices support the Multi-Media Card (MMC card) standard that grew out of a joint development between San-Disk Corporation and Siemens AG/Infineon Technologies AG, and was introduced in November, 1997. MMC cards typically weigh less than two grams, are about the size of a postage stamp, and are the world's smallest (24 mm×32 mm×1.4 mm) removable solid-state memory solution for mobile applications, such as MP-3 music players, portable video games, laptop computers, personal digital assistants (PDAs), mobile telephones, and digital cameras. These devices are convenient, reliable, rugged and lightweight standardized data carriers that store up to 64 Mbytes, sufficient for 64 minutes of MP-3 digital music, or approximately 40,000 book pages.
MMC cards typically use ROM technology for read-only applications and Flash technology for read/write applications. The cards are fast for excellent system performance, energy efficient for prolonged battery life in portable products, and cost-efficient for use in systems sold at consumer price points. The simple molded MMC card package has a seven pad (pin) serial interface. This easy-to-install simple serial interface offers easy integration into various devices regardless of the microprocessor used.
The MMC card has a wide variety of uses in some of the most exciting products on the market today. Mobile phones in use today typically are little more than a device to make and receive calls. Most pagers simply alert their owners to call a certain phone number. These limitations are due largely to small storage capability in mobile phones and pagers. The vast majority of mobile communication devices have less than one megabyte (MB) of storage.
MMC cards bring true mass storage capability to mobile phones and pagers. With this new Flash card technology, faxes, voice and e-mail messages, Internet files and software applications all can be downloaded to the new memory card and accessed on mobile phones and pagers. Unfortunately, the MMC cards are typically used only for storing multimedia content and not used for any other purpose.
Further limitations and disadvantages of conventional and traditional approaches will become apparent to one of skill in the art, through comparison of such systems with some aspects of the present invention as set forth in the remainder of the present application with reference to the drawings.